package com.marketfarm.client.service;

import java.util.List;
import java.util.Map;

import com.google.gwt.user.client.rpc.AsyncCallback;
import com.marketfarm.shared.entity.Item;
import com.marketfarm.shared.entity.Item.TipoItem;
import com.marketfarm.shared.entity.Ordem;
import com.marketfarm.shared.entity.Ordem.TipoOrdem;

public interface CompraVendaServiceAsync {

	void removerOrdem(Ordem ordem, AsyncCallback<Boolean> callback);

	void getOrdensAtuais(TipoItem tipoItem, Long avoidCache,
			AsyncCallback<Map<TipoOrdem, List<Ordem>>> callback);

	void getItens(Long avoidCache, AsyncCallback<Map<TipoItem, Item>> callback);

	void comprar(String sessao, TipoItem tipoItem, Integer quantidade,
			Double preco, AsyncCallback<Ordem> callback);

	void vender(String sessao, TipoItem tipoItem, Integer quantidade,
			Double preco, AsyncCallback<Ordem> callback);

}
